<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!-- 字符串中，与正则配合使用的方法 -->
    <!-- replace: 替换 -->
    <!-- match：捕获 -->
    <!-- search 查询 -->
    <!-- split:分隔 -->
    <script>
    //    var str="hello apple one Apple apple";
    //    var newstr=str.replace(/apple/ig,"苹果");
    //    console.log(newstr);

    // var str="red1 one blue2 two green3 scee";
    // var newstr=str.replace(/(red|blue|green)(\d)/g,(value,$1,$2)=>{
    //     //value 完全匹配成功的内容----red1
    //     //$1: 匹配成功第一个小括号的值--red 
    //     //$2: 匹配成功第二个小括号的值--1
    //     //console.log(value,$1,$2);
    //     return `<b style="color:${$1};">${value}</b>`;//函数的返回值，就是替换的结果
    // });
    // console.log(newstr);
    // document.write(newstr);


    //    var str="hello apple one Apple apple";
    //    var reg=/apple/ig;
    //    console.log(str.match(reg));

    //?的作用
    //1. 如果前面不是数量词，作用就是1次或0次
    //2. 如果前面是数量词，作用将贪婪匹配 变成 惰性匹配
    //贪婪匹配:尽可能长的匹配(默认)
    //惰性匹配:尽可能短的匹配
    // var str="<b>hello</b> one <b>two</b> scee";
    // var newstr=str.match(/<b>.*?<\/b>/ig);
    // console.log(newstr);

    //search 查询 查到符合条件的内容返回索引下标(永远是第一个),g不起作用
    // var str="hello do Hello two HEllo scee do one";
    // var reg=/\bdo\b/ig;

    // var newstr=str.search(reg);
    // console.log(newstr);//6 

    // while(reg.test(str)){
    //     var newstr=str.search(reg);
    //     console.log(newstr);//6 
    // }

    // var str="hello    world   one two";
    // var arr=str.split(/\s+/);
    // console.log(arr);// ["hello", "world", "one", "two"]

    //练习题：去掉一个字符串开头和结尾的空白字符
    var str="              hello  world  one two       ";
    var newstr=str.replace(/(^\s+|\s+$)/g,"");
    console.log(newstr);//hello  world  one two
    </script>
</body>
</html>